home *** CD-ROM | disk | FTP | other *** search
/ Item MB Quick & Easy 2.0 / Item MB Quick & Easy 2.0.iso / mbfacad / mb37382.lsp < prev    next >
Text File  |  1998-03-15  |  4KB  |  98 lines

  1. ;=============373.82 SCHARNIER St
  2.  
  3.  
  4. (defun C:37382Z1 (/ P1 P2 L n i Wi Wix LGes P Pos1)
  5.    (EAITDBL "0037382")
  6.    (princ (strcat "\n\n" EAITbez1))
  7.    (EAITvari)
  8.    (EAITvars)
  9.    (setvar "ORTHOMODE" 1)
  10.    (setq L (- EAITlmin 1))
  11.    (while (< L EAITlmin)
  12.       (EAITbpt nil nil (strcat (EAITmg "mb_mld10" "006")" "(EAITmg "mb_mld10" "015")))    ;Startpunkt (Return = relativ):
  13.       (setq P1 (getpoint))
  14.       (if (= P1 nil)(setq P1 (EAITrpt)))
  15.       (EAITbpt nil nil (strcat (EAITmg "mb_mld10" "007")" "(EAITmg "mb_mld10" "015")))    ;Endpunkt (Return = relativ): 
  16.       (setq P2 (getpoint P1))
  17.       (initget 4 "?")
  18.       (EAITmsg "mb_mld12" "\n" "005" " ")            ;Anzahl der Scharniere (2,3,...,?): <2>
  19.       (setq n (getint))
  20.       (setq Wi   (angle P1 P2)     )
  21.       (setq Wix  (- (EAITbig Wi) 90)   )
  22.       (setq LGes (distance P1 P2)  )
  23.       (cond ((= n nil)(setq n 2))
  24.             ((= n  0 )(setq n 2))
  25.             ((= n "?")(progn
  26.                           (setq n (1+ (fix (+ (/ LGes 600) 0.5))))
  27.                           (if (< n 2)(setq n 2))
  28.                       )
  29.             )
  30.       )
  31.       (setq L    (/ (- LGes 160)(float (- n 1))))
  32.       (if (< L EAITlmin)(progn (EAITmsg "mb_mld12" "\n" "006" " ")(princ EAITlmin)(EAITmsg "mb_mld13" nil "006" nil)(EAITmsg "mb_mld12" " " "007" " ")))  
  33.                        ;Ungültige Eingabe: es werden min. 40mm je Scharnier benötigt!
  34.    )
  35.    (setq P (polar P1 Wi 80) )
  36.    (setvar "ORTHOMODE" 0)
  37.    (setvar "OSMODE" 0)
  38.    (repeat n
  39.          (command EAITege (strcat EAITpfn "37382v1") P "" "" EAITofkei Wix)
  40.          (command EAITege (strcat EAITpfn "EAITinfo") (polar P (+ (EAITbw)(EAITgib 55)) 8.5) "" "" (EAITbig (EAITbw))
  41.                     EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  42.          )
  43.          (setq P (polar P Wi L))
  44.    )
  45.    (EAITvarz2)
  46.    (princ)
  47. )
  48.  
  49.  
  50.  
  51.  
  52. (defun C:37382Z2 (/ P1 P2 L n i Wi Wix LGes P Pos1)
  53.    (EAITDBL "0037382")
  54.    (princ (strcat "\n\n" EAITbez1))
  55.    (EAITvari)
  56.    (EAITvars)
  57.    (setvar "ORTHOMODE" 1)
  58.    (setq L (- EAITlmin 1))
  59.    (while (< L EAITlmin)
  60.       (EAITbpt nil nil (strcat (EAITmg "mb_mld10" "006")" "(EAITmg "mb_mld10" "015")))    ;Startpunkt (Return = relativ):
  61.       (setq P1 (getpoint))
  62.       (if (= P1 nil)(setq P1 (EAITrpt)))
  63.       (EAITbpt nil nil (strcat (EAITmg "mb_mld10" "007")" "(EAITmg "mb_mld10" "015")))    ;Endpunkt (Return = relativ): 
  64.       (setq P2 (getpoint P1))
  65.       (initget 4 "?")
  66.       (EAITmsg "mb_mld12" "\n" "005" " ")            ;Anzahl der Scharniere (2,3,...,?): <2>
  67.       (setq n (getint))
  68.       (setq Wi   (angle P1 P2)     )
  69.       (setq Wix  (- (EAITbig Wi) 90)   )
  70.       (setq LGes (distance P1 P2)  )
  71.       (cond ((= n nil)(setq n 2))
  72.             ((= n  0 )(setq n 2))
  73.             ((= n "?")(progn
  74.                           (setq n (1+ (fix (+ (/ LGes 600) 0.5))))
  75.                           (if (< n 2)(setq n 2))
  76.                       )
  77.             )
  78.       )
  79.       (setq L    (/ (- LGes 160)(float (- n 1))))
  80.       (if (< L EAITlmin)(progn (EAITmsg "mb_mld12" "\n" "006" " ")(princ EAITlmin)(EAITmsg "mb_mld13" nil "006" nil)(EAITmsg "mb_mld12" " " "007" " ")))  
  81.                        ;Ungültige Eingabe: es werden min. 32mm je Scharnier benötigt!
  82.    )
  83.    (setq P    (polar P1 Wi 80) )
  84.    (setvar "ORTHOMODE" 0)
  85.    (setvar "OSMODE" 0)
  86.    (repeat n
  87.          (command EAITege (strcat EAITpfn "37382sz") P "" "" EAITofkei Wix)
  88.          (command EAITege (strcat EAITpfn "EAITinfo") (polar P (+ (EAITbw)(EAITgib 20)) 8) "" "" (EAITbig (EAITbw))
  89.                     EAITbez1 EAITbez2 EAITlie1 EAITlie2 EAITwer1 EAITwer2 (rtos EAITl1 2 1) (rtos EAITb1 2 1) EAITnr
  90.          )
  91.          (setq P (polar P Wi L))
  92.    )
  93.    (EAITvarz2)
  94.    (princ)
  95. )
  96.  
  97. (princ)
  98.